#include <direct.h> требуется только для объявления функции.
char *getcwd(pathbuf,n);
char *pathbuf; память для path-имени.
int n; максимальная длина path-имени.
Описание:
Функция getcwd получает полное path -имя текущего рабочего директория и запоминает его в pathbuf . Целый аргумент n определяет максимальную длину для path -имени. Возникает ошибка, если длина path -имени, включая нулевой символ окончания, превышает n.
Аргумент pathbuf может быть NULL ; буфер размером n будет автоматически захватываться посредством malloc и использоваться для хранения path -имени. Этот буфер позже может быть освобожден при использовании возвращаемого значения функции getchar (указатель на захваченный буфер) посредством функции free.
Возвращаемое значение:
Функция getcwd возвращает pathbuf . Возвращаемое значение NULL свидетельствует об ошибке и errno устанавливается в одно из следующих значений:
Значение Его смысл
ENOMEM Памяти недостаточно для размещения n
байт (когда аргумент NULL задан как
pathbuf).
ERANGE Path-имя длинее, чем n символов.
Пример.
#include <direct.h>
#include <stdlib.h>
char buffer [51];
/* следующий оператор записывает имя текущего рабочего **
директория (длиной до 50 символов) в буфер */
if (getcwd(buffer,50)==NULL)
perror("getcwd error");